using SqlSugar;
using System.ComponentModel.DataAnnotations;
namespace Jst.Domain
{
    [SugarTable("TasksQz", TableDescription = "任务计划表")]
    public partial class TasksQz
    {
        /// <summary>
        /// Id
        /// </summary>
        [Display(Name = "Id")]
        [SugarColumn(ColumnDescription = "Id", IsNullable = false, IsPrimaryKey = true, IsIdentity = false)]
        [Required(ErrorMessage = "请输入{0}")]
        public long Id { get; set; }

        /// <summary>
        /// 任务名称
        /// </summary>
        [Display(Name = "任务名称")]
        [SugarColumn(ColumnDescription = "任务名称", IsNullable = true, IsPrimaryKey = false, IsIdentity = false)]
        [StringLength(200, ErrorMessage = "【{0}】不能超过{1}字符长度")]
        public string Name { get; set; }

        /// <summary>
        /// 任务分组
        /// </summary>
        [Display(Name = "任务分组")]
        [SugarColumn(ColumnDescription = "任务分组", IsNullable = true, IsPrimaryKey = false, IsIdentity = false)]
        [StringLength(200, ErrorMessage = "【{0}】不能超过{1}字符长度")]
        public string JobGroup { get; set; }

        /// <summary>
        /// 任务运行时间表达式
        /// </summary>
        [Display(Name = "任务运行时间表达式")]
        [SugarColumn(ColumnDescription = "任务运行时间表达式", IsNullable = true, IsPrimaryKey = false, IsIdentity = false)]
        [StringLength(200, ErrorMessage = "【{0}】不能超过{1}字符长度")]
        public string Cron { get; set; }

        /// <summary>
        /// 任务所在DLL对应的程序集名称
        /// </summary>
        [Display(Name = "任务所在DLL对应的程序集名称")]
        [SugarColumn(ColumnDescription = "任务所在DLL对应的程序集名称", IsNullable = true, IsPrimaryKey = false, IsIdentity = false)]
        [StringLength(200, ErrorMessage = "【{0}】不能超过{1}字符长度")]
        public string AssemblyName { get; set; }

        /// <summary>
        /// 任务所在类
        /// </summary>
        [Display(Name = "任务所在类")]
        [SugarColumn(ColumnDescription = "任务所在类", IsNullable = true, IsPrimaryKey = false, IsIdentity = false)]
        [StringLength(200, ErrorMessage = "【{0}】不能超过{1}字符长度")]
        public string ClassName { get; set; }

        /// <summary>
        /// 任务描述
        /// </summary>
        [Display(Name = "任务描述")]
        [SugarColumn(ColumnDescription = "任务描述", IsNullable = true, IsPrimaryKey = false, IsIdentity = false)]
        [StringLength(1000, ErrorMessage = "【{0}】不能超过{1}字符长度")]
        public string Remark { get; set; }

        /// <summary>
        /// 执行次数
        /// </summary>
        [Display(Name = "执行次数")]
        [SugarColumn(ColumnDescription = "执行次数", IsNullable = false, IsPrimaryKey = false, IsIdentity = false)]
        [Required(ErrorMessage = "请输入{0}")]
        public int RunTimes { get; set; }

        /// <summary>
        /// 开始时间
        /// </summary>
        [Display(Name = "开始时间")]
        [SugarColumn(ColumnDescription = "开始时间", IsNullable = false, IsPrimaryKey = false, IsIdentity = false)]
        [Required(ErrorMessage = "请输入{0}")]
        public DateTime BeginTime { get; set; }

        /// <summary>
        /// 结束时间
        /// </summary>
        [Display(Name = "结束时间")]
        [SugarColumn(ColumnDescription = "结束时间", IsNullable = false, IsPrimaryKey = false, IsIdentity = false)]
        [Required(ErrorMessage = "请输入{0}")]
        public DateTime EndTime { get; set; }

        /// <summary>
        /// 触发器类型（0、simple 1、cron）
        /// </summary>
        [Display(Name = "触发器类型（0、simple 1、cron）")]
        [SugarColumn(ColumnDescription = "触发器类型（0、simple 1、cron）", IsNullable = false, IsPrimaryKey = false, IsIdentity = false)]
        [Required(ErrorMessage = "请输入{0}")]
        public int TriggerType { get; set; }

        /// <summary>
        /// 执行间隔时间, 秒为单位
        /// </summary>
        [Display(Name = "执行间隔时间, 秒为单位")]
        [SugarColumn(ColumnDescription = "执行间隔时间, 秒为单位", IsNullable = false, IsPrimaryKey = false, IsIdentity = false)]
        [Required(ErrorMessage = "请输入{0}")]
        public int IntervalSecond { get; set; }

        /// <summary>
        /// 循环执行次数
        /// </summary>
        [Display(Name = "循环执行次数")]
        [SugarColumn(ColumnDescription = "循环执行次数", IsNullable = false, IsPrimaryKey = false, IsIdentity = false)]
        [Required(ErrorMessage = "请输入{0}")]
        public int CycleRunTimes { get; set; }

        /// <summary>
        /// 已循环次数
        /// </summary>
        [Display(Name = "已循环次数")]
        [SugarColumn(ColumnDescription = "已循环次数", IsNullable = false, IsPrimaryKey = false, IsIdentity = false)]
        [Required(ErrorMessage = "请输入{0}")]
        public int CycleHasRunTimes { get; set; }

        /// <summary>
        /// 是否启动
        /// </summary>
        [Display(Name = "是否启动")]
        [SugarColumn(ColumnDescription = "是否启动", IsNullable = false, IsPrimaryKey = false, IsIdentity = false)]
        [Required(ErrorMessage = "请输入{0}")]
        public bool IsStart { get; set; }

        /// <summary>
        /// 执行传参
        /// </summary>
        [Display(Name = "执行传参")]
        [SugarColumn(ColumnDescription = "执行传参", IsNullable = false, IsPrimaryKey = false, IsIdentity = false)]
        [StringLength(255, ErrorMessage = "【{0}】不能超过{1}字符长度")]
        public string JobParams { get; set; }

        /// <summary>
        /// IsDeleted
        /// </summary>
        [Display(Name = "IsDeleted")]
        [SugarColumn(ColumnDescription = "IsDeleted", IsNullable = true, IsPrimaryKey = false, IsIdentity = false)]
        [Required(ErrorMessage = "请输入{0}")]
        public bool IsDeleted { get; set; }

        /// <summary>
        /// 创建时间
        /// </summary>
        [Display(Name = "创建时间")]
        [SugarColumn(ColumnDescription = "创建时间", IsNullable = true, IsPrimaryKey = false, IsIdentity = false)]
        [Required(ErrorMessage = "请输入{0}")]
        public DateTime CreateTime { get; set; }

    }
}
